{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-search-core",
      "artifactVersion": "2025.27.34",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.admin.center",
          "org.nuxeo.binary.metadata",
          "org.nuxeo.directory.mongodb",
          "org.nuxeo.dmk-adaptor",
          "org.nuxeo.ecm.actions",
          "org.nuxeo.ecm.audit.io",
          "org.nuxeo.ecm.default.config",
          "org.nuxeo.ecm.jwt",
          "org.nuxeo.ecm.permissions",
          "org.nuxeo.ecm.platform",
          "org.nuxeo.ecm.platform.api",
          "org.nuxeo.ecm.platform.audio.core",
          "org.nuxeo.ecm.platform.audit",
          "org.nuxeo.ecm.platform.collections.core",
          "org.nuxeo.ecm.platform.commandline.executor",
          "org.nuxeo.ecm.platform.content.template",
          "org.nuxeo.ecm.platform.convert",
          "org.nuxeo.ecm.platform.csv.export",
          "org.nuxeo.ecm.platform.dublincore",
          "org.nuxeo.ecm.platform.filemanager",
          "org.nuxeo.ecm.platform.htmlsanitizer",
          "org.nuxeo.ecm.platform.mail",
          "org.nuxeo.ecm.platform.notification",
          "org.nuxeo.ecm.platform.oauth",
          "org.nuxeo.ecm.platform.oauth1",
          "org.nuxeo.ecm.platform.pdf",
          "org.nuxeo.ecm.platform.preview",
          "org.nuxeo.ecm.platform.publisher",
          "org.nuxeo.ecm.platform.query.api",
          "org.nuxeo.ecm.platform.rendering",
          "org.nuxeo.ecm.platform.search.core",
          "org.nuxeo.ecm.platform.suggestbox.core",
          "org.nuxeo.ecm.platform.tag",
          "org.nuxeo.ecm.platform.thumbnail",
          "org.nuxeo.ecm.platform.types",
          "org.nuxeo.ecm.platform.url",
          "org.nuxeo.ecm.platform.usermanager",
          "org.nuxeo.ecm.platform.userworkspace",
          "org.nuxeo.ecm.quota",
          "org.nuxeo.importer.stream",
          "org.nuxeo.mail",
          "org.nuxeo.usermapper"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.platform",
        "id": "grp:org.nuxeo.ecm.platform",
        "name": "org.nuxeo.ecm.platform",
        "parentIds": [],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "# Nuxeo Platform Importer\n\n## About Nuxeo Platform Importer\n\nThe file importer comes as a Java library (with nuxeo runtime service) and a sample JAX-RS interface to launch, monitor and abort import jobs.\nThis project is an on-going project, supported by Nuxeo\n\n## Building\n### How to Build Nuxeo Platform Importer\nBuild the Nuxeo Platform Importer with Maven:\n```$ mvn install -Dmaven.test.skip=true```\n\n## Deploying\nNuxeo Platform Importer is available as two package add-ons [from the Nuxeo Marketplace]\nhttps://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-platform-importer\nhttps://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-scan-importer\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Platform Importer is available in our Documentation Center: http://doc.nuxeo.com/x/gYBVAQ\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Nuxeo Platform Importer component:\nhttps://jira.nuxeo.com/browse/NXP/component/10621\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "83bb2a4c6415c9f07db3ab17fa99510c",
            "encoding": "UTF-8",
            "length": 1753,
            "mimeType": "text/plain",
            "name": "README.md"
          }
        ],
        "version": "2025.27"
      },
      "bundleId": "org.nuxeo.ecm.platform.search.core",
      "components": [
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.platform.search.core.SavedSearchServiceImpl",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.service",
          "name": "org.nuxeo.ecm.platform.search.service",
          "requirements": [],
          "resolutionOrder": 635,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.search.service",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.service/Services/org.nuxeo.ecm.platform.search.core.SavedSearchService",
              "id": "org.nuxeo.ecm.platform.search.core.SavedSearchService",
              "overriden": false,
              "version": "2025.27.34"
            }
          ],
          "startOrder": 384,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.platform.search.service\">\n\n  <implementation\n      class=\"org.nuxeo.ecm.platform.search.core.SavedSearchServiceImpl\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.platform.search.core.SavedSearchService\" />\n  </service>\n\n</component>",
          "xmlFileName": "/OSGI-INF/savedsearch-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.CoreExtensions/Contributions/org.nuxeo.ecm.platform.search.CoreExtensions--schema",
              "id": "org.nuxeo.ecm.platform.search.CoreExtensions--schema",
              "registrationOrder": 44,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"saved_search\" prefix=\"saved\" src=\"schemas/saved_search.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.CoreExtensions/Contributions/org.nuxeo.ecm.platform.search.CoreExtensions--doctype",
              "id": "org.nuxeo.ecm.platform.search.CoreExtensions--doctype",
              "registrationOrder": 39,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <facet name=\"SavedSearch\" perDocumentQuery=\"false\">\n      <schema name=\"common\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"uid\"/>\n      <schema name=\"saved_search\"/>\n    </facet>\n\n    <doctype extends=\"Document\" name=\"SavedSearch\">\n      <facet name=\"SavedSearch\"/>\n      <facet name=\"HiddenInNavigation\"/>\n    </doctype>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.CoreExtensions",
          "name": "org.nuxeo.ecm.platform.search.CoreExtensions",
          "requirements": [
            "org.nuxeo.ecm.core.schema.TypeService",
            "org.nuxeo.ecm.core.CoreExtensions"
          ],
          "resolutionOrder": 636,
          "services": [],
          "startOrder": 378,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.search.CoreExtensions\">\n\n  <require>org.nuxeo.ecm.core.CoreExtensions</require>\n  <require>org.nuxeo.ecm.core.schema.TypeService</require>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n             point=\"schema\">\n    <schema name=\"saved_search\" src=\"schemas/saved_search.xsd\" prefix=\"saved\"/>\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n             point=\"doctype\">\n\n    <facet name=\"SavedSearch\" perDocumentQuery=\"false\">\n      <schema name=\"common\" />\n      <schema name=\"dublincore\" />\n      <schema name=\"uid\" />\n      <schema name=\"saved_search\"/>\n    </facet>\n\n    <doctype name=\"SavedSearch\" extends=\"Document\">\n      <facet name=\"SavedSearch\" />\n      <facet name=\"HiddenInNavigation\" />\n    </doctype>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/savedsearch-core-types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.adapter/Contributions/org.nuxeo.ecm.platform.search.adapter--adapters",
              "id": "org.nuxeo.ecm.platform.search.adapter--adapters",
              "registrationOrder": 24,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n\n    <adapter class=\"org.nuxeo.ecm.platform.search.core.SavedSearch\" factory=\"org.nuxeo.ecm.platform.search.core.SavedSearchAdapterFactory\"/>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.adapter",
          "name": "org.nuxeo.ecm.platform.search.adapter",
          "requirements": [],
          "resolutionOrder": 637,
          "services": [],
          "startOrder": 379,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.search.adapter\">\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n             point=\"adapters\">\n\n    <adapter class=\"org.nuxeo.ecm.platform.search.core.SavedSearch\"\n             factory=\"org.nuxeo.ecm.platform.search.core.SavedSearchAdapterFactory\" />\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/savedsearch-adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.pageproviders/Contributions/org.nuxeo.ecm.platform.search.pageproviders--providers",
              "id": "org.nuxeo.ecm.platform.search.pageproviders--providers",
              "registrationOrder": 28,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES_ALL\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND ((saved:query IS NOT NULL AND saved:queryLanguage IS NOT NULL)\n              OR saved:providerName IS NOT NULL)\n        AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:title\"/>\n      <pageSize>50</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES_ALL_PAGE_PROVIDER\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND ((saved:query IS NOT NULL AND saved:queryLanguage IS NOT NULL)\n              OR saved:providerName IS NOT NULL)\n        AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND saved:providerName = :pageProvider\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:title\"/>\n      <pageSize>50</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES\">\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND cvd:contentViewName IS NOT NULL\n        AND dc:creator = ? AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND SORTED_COLUMN IS NOT NULL\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:title\"/>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SHARED_SAVED_SEARCHES\">\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND cvd:contentViewName IS NOT NULL\n        AND dc:creator != ? AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND SORTED_COLUMN IS NOT NULL\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:title\"/>\n    </coreQueryPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.pageproviders",
          "name": "org.nuxeo.ecm.platform.search.pageproviders",
          "requirements": [],
          "resolutionOrder": 638,
          "services": [],
          "startOrder": 383,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.search.pageproviders\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n             point=\"providers\">\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES_ALL\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND ((saved:query IS NOT NULL AND saved:queryLanguage IS NOT NULL)\n              OR saved:providerName IS NOT NULL)\n        AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n      </pattern>\n      <sort column=\"dc:title\" ascending=\"true\" />\n      <pageSize>50</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES_ALL_PAGE_PROVIDER\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND ((saved:query IS NOT NULL AND saved:queryLanguage IS NOT NULL)\n              OR saved:providerName IS NOT NULL)\n        AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND saved:providerName = :pageProvider\n      </pattern>\n      <sort column=\"dc:title\" ascending=\"true\" />\n      <pageSize>50</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SAVED_SEARCHES\">\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND cvd:contentViewName IS NOT NULL\n        AND dc:creator = ? AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND SORTED_COLUMN IS NOT NULL\n      </pattern>\n      <sort column=\"dc:title\" ascending=\"true\" />\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"SHARED_SAVED_SEARCHES\">\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <pattern>\n        SELECT * FROM Document WHERE ecm:mixinType = 'SavedSearch'\n        AND cvd:contentViewName IS NOT NULL\n        AND dc:creator != ? AND ecm:isProxy = 0\n        AND ecm:isVersion = 0\n        AND ecm:isTrashed = 0\n        AND SORTED_COLUMN IS NOT NULL\n      </pattern>\n      <sort column=\"dc:title\" ascending=\"true\" />\n    </coreQueryPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/savedsearch-pageprovider-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.types/Contributions/org.nuxeo.ecm.platform.search.default.types--schema",
              "id": "org.nuxeo.ecm.platform.search.default.types--schema",
              "registrationOrder": 45,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"default_search\" prefix=\"defaults\" src=\"schemas/default_search.xsd\"/>\n    <schema name=\"expired_search\" prefix=\"expired_search\" src=\"schemas/expired_search.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.types/Contributions/org.nuxeo.ecm.platform.search.default.types--doctype",
              "id": "org.nuxeo.ecm.platform.search.default.types--doctype",
              "registrationOrder": 40,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <!-- For default search -->\n    <doctype extends=\"SavedSearch\" name=\"DefaultSearch\">\n      <facet name=\"ContentViewDisplay\"/>\n      <schema name=\"default_search\"/>\n    </doctype>\n\n    <doctype extends=\"SavedSearch\" name=\"ExpiredSearch\">\n      <schema name=\"expired_search\"/>\n    </doctype>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.lifecycle.LifeCycleService--types",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.types/Contributions/org.nuxeo.ecm.platform.search.default.types--types",
              "id": "org.nuxeo.ecm.platform.search.default.types--types",
              "registrationOrder": 16,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "name": "org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\">\n    <types>\n      <type name=\"DefaultSearch\">default</type>\n    </types>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.types",
          "name": "org.nuxeo.ecm.platform.search.default.types",
          "requirements": [
            "org.nuxeo.ecm.platform.search.CoreExtensions",
            "org.nuxeo.ecm.core.schema.TypeService",
            "org.nuxeo.ecm.core.CoreExtensions"
          ],
          "resolutionOrder": 639,
          "services": [],
          "startOrder": 381,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.ecm.platform.search.default.types\">\n\n  <require>org.nuxeo.ecm.core.schema.TypeService</require>\n  <require>org.nuxeo.ecm.core.CoreExtensions</require>\n  <require>org.nuxeo.ecm.platform.search.CoreExtensions</require>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"schema\">\n    <schema name=\"default_search\" prefix=\"defaults\" src=\"schemas/default_search.xsd\" />\n    <schema name=\"expired_search\" prefix=\"expired_search\" src=\"schemas/expired_search.xsd\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"doctype\">\n\n    <!-- For default search -->\n    <doctype name=\"DefaultSearch\" extends=\"SavedSearch\">\n      <facet name=\"ContentViewDisplay\" />\n      <schema name=\"default_search\" />\n    </doctype>\n\n    <doctype name=\"ExpiredSearch\" extends=\"SavedSearch\">\n      <schema name=\"expired_search\" />\n    </doctype>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\" point=\"types\">\n    <types>\n      <type name=\"DefaultSearch\">default</type>\n    </types>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/search-core-types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.types.TypeService--types",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.search.ui.types/Contributions/org.nuxeo.search.ui.types--types",
              "id": "org.nuxeo.search.ui.types--types",
              "registrationOrder": 9,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.types.TypeService",
                "name": "org.nuxeo.ecm.platform.types.TypeService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.platform.types.TypeService\">\n\n    <type id=\"DefaultSearch\">\n      <label>DefaultSearch</label>\n      <icon>/icons/search.png</icon>\n      <bigIcon>/icons/search_100.png</bigIcon>\n      <description>DefaultSearch.description</description>\n      <default-view>home_view_documents</default-view>\n    </type>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.search.ui.types",
          "name": "org.nuxeo.search.ui.types",
          "requirements": [],
          "resolutionOrder": 640,
          "services": [],
          "startOrder": 528,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.search.ui.types\">\n\n  <extension target=\"org.nuxeo.ecm.platform.types.TypeService\" point=\"types\">\n\n    <type id=\"DefaultSearch\">\n      <label>DefaultSearch</label>\n      <icon>/icons/search.png</icon>\n      <bigIcon>/icons/search_100.png</bigIcon>\n      <description>DefaultSearch.description</description>\n      <default-view>home_view_documents</default-view>\n    </type>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/search-ui-types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.pageproviders/Contributions/org.nuxeo.ecm.platform.search.default.pageproviders--providers",
              "id": "org.nuxeo.ecm.platform.search.default.pageproviders--providers",
              "registrationOrder": 29,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <coreQueryPageProvider name=\"default_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')\n          AND ecm:mixinType != 'HiddenInNavigation'\n          AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')\n          AND ecm:isVersion = 0\n          AND ecm:isTrashed = 0\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate operator=\"FULLTEXT\" parameter=\"ecm:fulltext\">\n          <field name=\"ecm_fulltext\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"dc:creator\">\n          <field name=\"dc_creator\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"BETWEEN\" parameter=\"dc:created\">\n          <field name=\"dc_created_min\" schema=\"default_search\"/>\n          <field name=\"dc_created_max\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"BETWEEN\" parameter=\"dc:modified\">\n          <field name=\"dc_modified_min\" schema=\"default_search\"/>\n          <field name=\"dc_modified_max\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"dc:nature\">\n          <field name=\"dc_nature\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"STARTSWITH\" parameter=\"dc:subjects\">\n          <field name=\"dc_subjects\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"STARTSWITH\" parameter=\"dc:coverage\">\n          <field name=\"dc_coverage\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"STARTSWITH\" parameter=\"ecm:path\">\n          <field name=\"ecm_path\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"ecm:tag\">\n          <field name=\"ecm_tags\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"collectionMember:collectionIds\">\n          <field name=\"ecm_collections\" schema=\"default_search\"/>\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_nature_agg\" parameter=\"dc:nature\" type=\"terms\">\n          <field name=\"dc_nature_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_subjects_agg\" parameter=\"dc:subjects\" type=\"terms\">\n          <field name=\"dc_subjects_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_coverage_agg\" parameter=\"dc:coverage\" type=\"terms\">\n          <field name=\"dc_coverage_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_creator_agg\" parameter=\"dc:creator\" type=\"terms\">\n          <field name=\"dc_creator_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"common_size_agg\" parameter=\"file:content/length\" type=\"range\">\n          <field name=\"common_size_agg\" schema=\"default_search\"/>\n          <ranges>\n            <range key=\"tiny\" to=\"102400\"/>\n            <range from=\"102401\" key=\"small\" to=\"1048576\"/>\n            <range from=\"1048577\" key=\"medium\" to=\"10485760\"/>\n            <range from=\"10485761\" key=\"big\" to=\"104857600\"/>\n            <range from=\"104857601\" key=\"huge\"/>\n          </ranges>\n        </aggregate>\n        <aggregate id=\"dc_modified_agg\" parameter=\"dc:modified\" type=\"date_range\">\n          <field name=\"dc_modified_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"format\">\"dd-MM-yyyy\"</property>\n          </properties>\n          <dateRanges>\n            <dateRange fromDate=\"now-24H\" key=\"last24h\" toDate=\"now\"/>\n            <dateRange fromDate=\"now-7d\" key=\"lastWeek\" toDate=\"now-24H\"/>\n            <dateRange fromDate=\"now-1M\" key=\"lastMonth\" toDate=\"now-7d\"/>\n            <dateRange fromDate=\"now-1y\" key=\"lastYear\" toDate=\"now-1M\"/>\n            <dateRange key=\"priorToLastYear\" toDate=\"now-1y\"/>\n          </dateRanges>\n        </aggregate>\n      </aggregates>\n      <quickFilters>\n        <quickFilter name=\"noFolder\">\n          <clause>ecm:mixinType != 'Folderish'</clause>\n        </quickFilter>\n        <quickFilter name=\"mostRecent\">\n          <sort ascending=\"false\" column=\"dc:modified\"/>\n        </quickFilter>\n        <quickFilter name=\"onlyValidated\">\n          <clause>ecm:currentLifeCycleState = 'approved'</clause>\n          <sort ascending=\"false\" column=\"dc:modified\"/>\n        </quickFilter>\n      </quickFilters>\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"default_trash_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')\n          AND ecm:mixinType != 'HiddenInNavigation'\n          AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')\n          AND ecm:isCheckedInVersion = 0\n          AND ecm:isTrashed = 1\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate operator=\"FULLTEXT\" parameter=\"ecm:fulltext\">\n          <field name=\"ecm_fulltext\" schema=\"default_search\"/>\n        </predicate>\n        <predicate operator=\"STARTSWITH\" parameter=\"ecm:path\">\n          <field name=\"ecm_path\" schema=\"default_search\"/>\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_creator_agg\" parameter=\"dc:creator\" type=\"terms\">\n          <field name=\"dc_creator_agg\" schema=\"default_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"common_size_agg\" parameter=\"file:content/length\" type=\"range\">\n          <field name=\"common_size_agg\" schema=\"default_search\"/>\n          <ranges>\n            <range key=\"tiny\" to=\"102400\"/>\n            <range from=\"102401\" key=\"small\" to=\"1048576\"/>\n            <range from=\"1048577\" key=\"medium\" to=\"10485760\"/>\n            <range from=\"10485761\" key=\"big\" to=\"104857600\"/>\n            <range from=\"104857601\" key=\"huge\"/>\n          </ranges>\n        </aggregate>\n      </aggregates>\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"simple_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:mixinType != 'HiddenInNavigation' AND\n          ecm:isVersion = 0\n          AND ecm:isTrashed = 0\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate operator=\"FULLTEXT\" parameter=\"ecm:fulltext\">\n          <field name=\"ecm_fulltext\" schema=\"default_search\"/>\n        </predicate>\n      </whereClause>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"nxql_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <pattern escapeParameters=\"false\" quoteParameters=\"false\">?</pattern>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <searchServicePageProvider name=\"expired_search\">\n      <trackUsage>true</trackUsage>\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <searchDocumentType>ExpiredSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:isVersion = 0 AND\n          ecm:mixinType !=\n          'HiddenInNavigation' AND ecm:isTrashed = 0 AND ecm:parentId IS NOT NULL\n        </fixedPart>\n        <predicate operator=\"FULLTEXT\" parameter=\"dc:title\">\n          <field name=\"title\" schema=\"expired_search\"/>\n        </predicate>\n        <predicate operator=\"&lt;\" parameter=\"dc:expired\">\n          <field name=\"expired_max\" schema=\"expired_search\"/>\n        </predicate>\n        <predicate operator=\">\" parameter=\"dc:expired\">\n          <field name=\"expired_min\" schema=\"expired_search\"/>\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_creator_agg\" parameter=\"dc:creator\" type=\"terms\">\n          <field name=\"dc_creator_agg\" schema=\"expired_search\"/>\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_expired_agg\" parameter=\"dc:expired\" type=\"date_histogram\">\n          <field name=\"dc_expired_agg\" schema=\"expired_search\"/>\n          <properties>\n            <property name=\"interval\">month</property>\n            <property name=\"format\">MM-yyyy</property>\n            <property name=\"order\">key asc</property>\n          </properties>\n        </aggregate>\n      </aggregates>\n      <sort ascending=\"true\" column=\"dc:expired\"/>\n      <pageSize>20</pageSize>\n      <quickFilters>\n        <quickFilter name=\"approved\">\n          <clause>ecm:currentLifeCycleState = 'approved'</clause>\n        </quickFilter>\n      </quickFilters>\n    </searchServicePageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.default.pageproviders",
          "name": "org.nuxeo.ecm.platform.search.default.pageproviders",
          "requirements": [],
          "resolutionOrder": 641,
          "services": [],
          "startOrder": 380,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.search.default.pageproviders\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\" point=\"providers\">\n\n    <coreQueryPageProvider name=\"default_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')\n          AND ecm:mixinType != 'HiddenInNavigation'\n          AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')\n          AND ecm:isVersion = 0\n          AND ecm:isTrashed = 0\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate parameter=\"ecm:fulltext\" operator=\"FULLTEXT\">\n          <field schema=\"default_search\" name=\"ecm_fulltext\" />\n        </predicate>\n        <predicate parameter=\"dc:creator\" operator=\"IN\">\n          <field schema=\"default_search\" name=\"dc_creator\" />\n        </predicate>\n        <predicate parameter=\"dc:created\" operator=\"BETWEEN\">\n          <field schema=\"default_search\" name=\"dc_created_min\" />\n          <field schema=\"default_search\" name=\"dc_created_max\" />\n        </predicate>\n        <predicate parameter=\"dc:modified\" operator=\"BETWEEN\">\n          <field schema=\"default_search\" name=\"dc_modified_min\" />\n          <field schema=\"default_search\" name=\"dc_modified_max\" />\n        </predicate>\n        <predicate parameter=\"dc:nature\" operator=\"IN\">\n          <field schema=\"default_search\" name=\"dc_nature\" />\n        </predicate>\n        <predicate parameter=\"dc:subjects\" operator=\"STARTSWITH\">\n          <field schema=\"default_search\" name=\"dc_subjects\" />\n        </predicate>\n        <predicate parameter=\"dc:coverage\" operator=\"STARTSWITH\">\n          <field schema=\"default_search\" name=\"dc_coverage\" />\n        </predicate>\n        <predicate parameter=\"ecm:path\" operator=\"STARTSWITH\">\n          <field schema=\"default_search\" name=\"ecm_path\" />\n        </predicate>\n        <predicate parameter=\"ecm:tag\" operator=\"IN\">\n          <field schema=\"default_search\" name=\"ecm_tags\" />\n        </predicate>\n        <predicate parameter=\"collectionMember:collectionIds\"\n                   operator=\"IN\">\n          <field schema=\"default_search\" name=\"ecm_collections\" />\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_nature_agg\" type=\"terms\" parameter=\"dc:nature\">\n          <field schema=\"default_search\" name=\"dc_nature_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_subjects_agg\" type=\"terms\" parameter=\"dc:subjects\">\n          <field schema=\"default_search\" name=\"dc_subjects_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_coverage_agg\" type=\"terms\" parameter=\"dc:coverage\">\n          <field schema=\"default_search\" name=\"dc_coverage_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_creator_agg\" type=\"terms\" parameter=\"dc:creator\">\n          <field schema=\"default_search\" name=\"dc_creator_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"common_size_agg\" type=\"range\" parameter=\"file:content/length\">\n          <field schema=\"default_search\" name=\"common_size_agg\" />\n          <ranges>\n            <range key=\"tiny\" to=\"102400\"/>\n            <range key=\"small\" from=\"102401\" to=\"1048576\"/>\n            <range key=\"medium\" from=\"1048577\" to=\"10485760\"/>\n            <range key=\"big\" from=\"10485761\" to=\"104857600\" />\n            <range key=\"huge\" from=\"104857601\" />\n          </ranges>\n        </aggregate>\n        <aggregate id=\"dc_modified_agg\" type=\"date_range\" parameter=\"dc:modified\">\n          <field schema=\"default_search\" name=\"dc_modified_agg\" />\n          <properties>\n            <property name=\"format\">\"dd-MM-yyyy\"</property>\n          </properties>\n          <dateRanges>\n            <dateRange key=\"last24h\" fromDate=\"now-24H\" toDate=\"now\"/>\n            <dateRange key=\"lastWeek\" fromDate=\"now-7d\" toDate=\"now-24H\"/>\n            <dateRange key=\"lastMonth\" fromDate=\"now-1M\" toDate=\"now-7d\"/>\n            <dateRange key=\"lastYear\" fromDate=\"now-1y\" toDate=\"now-1M\"/>\n            <dateRange key=\"priorToLastYear\" toDate=\"now-1y\"/>\n          </dateRanges>\n        </aggregate>\n      </aggregates>\n      <quickFilters>\n        <quickFilter name=\"noFolder\">\n          <clause>ecm:mixinType != 'Folderish'</clause>\n        </quickFilter>\n        <quickFilter name=\"mostRecent\">\n          <sort column=\"dc:modified\" ascending=\"false\" />\n        </quickFilter>\n        <quickFilter name=\"onlyValidated\">\n          <clause>ecm:currentLifeCycleState = 'approved'</clause>\n          <sort column=\"dc:modified\" ascending=\"false\" />\n        </quickFilter>\n      </quickFilters>\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"default_trash_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')\n          AND ecm:mixinType != 'HiddenInNavigation'\n          AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')\n          AND ecm:isCheckedInVersion = 0\n          AND ecm:isTrashed = 1\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate parameter=\"ecm:fulltext\" operator=\"FULLTEXT\">\n          <field schema=\"default_search\" name=\"ecm_fulltext\" />\n        </predicate>\n        <predicate parameter=\"ecm:path\" operator=\"STARTSWITH\">\n          <field schema=\"default_search\" name=\"ecm_path\" />\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_creator_agg\" type=\"terms\" parameter=\"dc:creator\">\n          <field schema=\"default_search\" name=\"dc_creator_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"common_size_agg\" type=\"range\" parameter=\"file:content/length\">\n          <field schema=\"default_search\" name=\"common_size_agg\" />\n          <ranges>\n            <range key=\"tiny\" to=\"102400\"/>\n            <range key=\"small\" from=\"102401\" to=\"1048576\"/>\n            <range key=\"medium\" from=\"1048577\" to=\"10485760\"/>\n            <range key=\"big\" from=\"10485761\" to=\"104857600\" />\n            <range key=\"huge\" from=\"104857601\" />\n          </ranges>\n        </aggregate>\n      </aggregates>\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"simple_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:mixinType != 'HiddenInNavigation' AND\n          ecm:isVersion = 0\n          AND ecm:isTrashed = 0\n          AND ecm:parentId IS NOT NULL\n          AND SORTED_COLUMN IS NOT NULL\n        </fixedPart>\n        <predicate parameter=\"ecm:fulltext\" operator=\"FULLTEXT\">\n          <field schema=\"default_search\" name=\"ecm_fulltext\" />\n        </predicate>\n      </whereClause>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <coreQueryPageProvider name=\"nxql_search\">\n      <trackUsage>true</trackUsage>\n      <searchDocumentType>DefaultSearch</searchDocumentType>\n      <pattern quoteParameters=\"false\" escapeParameters=\"false\">?</pattern>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n    <searchServicePageProvider name=\"expired_search\">\n      <trackUsage>true</trackUsage>\n      <property name=\"maxResults\">DEFAULT_NAVIGATION_RESULTS</property>\n      <searchDocumentType>ExpiredSearch</searchDocumentType>\n      <whereClause>\n        <fixedPart>\n          ecm:isVersion = 0 AND\n          ecm:mixinType !=\n          'HiddenInNavigation' AND ecm:isTrashed = 0 AND ecm:parentId IS NOT NULL\n        </fixedPart>\n        <predicate parameter=\"dc:title\" operator=\"FULLTEXT\">\n          <field schema=\"expired_search\" name=\"title\" />\n        </predicate>\n        <predicate parameter=\"dc:expired\" operator=\"&lt;\">\n          <field schema=\"expired_search\" name=\"expired_max\" />\n        </predicate>\n        <predicate parameter=\"dc:expired\" operator=\"&gt;\">\n          <field schema=\"expired_search\" name=\"expired_min\" />\n        </predicate>\n      </whereClause>\n      <aggregates>\n        <aggregate id=\"dc_creator_agg\" type=\"terms\" parameter=\"dc:creator\">\n          <field schema=\"expired_search\" name=\"dc_creator_agg\" />\n          <properties>\n            <property name=\"size\">10</property>\n          </properties>\n        </aggregate>\n        <aggregate id=\"dc_expired_agg\" type=\"date_histogram\" parameter=\"dc:expired\">\n          <field schema=\"expired_search\" name=\"dc_expired_agg\" />\n          <properties>\n            <property name=\"interval\">month</property>\n            <property name=\"format\">MM-yyyy</property>\n            <property name=\"order\">key asc</property>\n          </properties>\n        </aggregate>\n      </aggregates>\n      <sort column=\"dc:expired\" ascending=\"true\" />\n      <pageSize>20</pageSize>\n      <quickFilters>\n        <quickFilter name=\"approved\">\n          <clause>ecm:currentLifeCycleState = 'approved'</clause>\n        </quickFilter>\n      </quickFilters>\n    </searchServicePageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/search-pageprovider-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentation": "\n    Core IO registered marshallers set.\n  \n",
          "documentationHtml": "<p>\nCore IO registered marshallers set.\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.io.MarshallerRegistry--marshallers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.marshallers/Contributions/org.nuxeo.ecm.platform.search.marshallers--marshallers",
              "id": "org.nuxeo.ecm.platform.search.marshallers--marshallers",
              "registrationOrder": 25,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.io.MarshallerRegistry",
                "name": "org.nuxeo.ecm.core.io.MarshallerRegistry",
                "type": "service"
              },
              "version": "2025.27.34",
              "xml": "<extension point=\"marshallers\" target=\"org.nuxeo.ecm.core.io.MarshallerRegistry\">\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchRequestReader\" enable=\"true\"/>\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchWriter\" enable=\"true\"/>\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchListReader\" enable=\"true\"/>\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchListWriter\" enable=\"true\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core/org.nuxeo.ecm.platform.search.marshallers",
          "name": "org.nuxeo.ecm.platform.search.marshallers",
          "requirements": [],
          "resolutionOrder": 642,
          "services": [],
          "startOrder": 382,
          "version": "2025.27.34",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.search.marshallers\" version=\"1.0.0\">\n  <documentation>\n    Core IO registered marshallers set.\n  </documentation>\n  <extension target=\"org.nuxeo.ecm.core.io.MarshallerRegistry\" point=\"marshallers\">\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchRequestReader\" enable=\"true\" />\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchWriter\" enable=\"true\" />\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchListReader\" enable=\"true\" />\n    <register class=\"org.nuxeo.ecm.platform.search.core.SavedSearchListWriter\" enable=\"true\" />\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/marshallers-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-search-core-2025.27.34.jar",
      "groupId": "org.nuxeo.ecm.platform",
      "hierarchyPath": "/grp:org.nuxeo.ecm.platform/org.nuxeo.ecm.platform.search.core",
      "id": "org.nuxeo.ecm.platform.search.core",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nCreated-By: Maven JAR Plugin 3.5.1\r\nJava-Version: 21\r\nBuild-Jdk-Spec: 21\r\nBundle-ManifestVersion: 1\r\nBundle-Name: Nuxeo Search Core\r\nBundle-SymbolicName: org.nuxeo.ecm.platform.search.core;singleton:=true\r\nBundle-Vendor: Nuxeo\r\nBundle-Version: 1.0.0\r\nNuxeo-Component: OSGI-INF/savedsearch-service.xml,OSGI-INF/savedsearch-c\r\n ore-types-contrib.xml,OSGI-INF/savedsearch-adapter-contrib.xml,OSGI-INF\r\n /savedsearch-pageprovider-contrib.xml,OSGI-INF/search-core-types-contri\r\n b.xml,OSGI-INF/search-ui-types-contrib.xml,OSGI-INF/search-pageprovider\r\n -contrib.xml,OSGI-INF/marshallers-contrib.xml\r\n\r\n",
      "maxResolutionOrder": 642,
      "minResolutionOrder": 635,
      "packages": [],
      "requirements": [],
      "version": "2025.27.34"
    }
  ],
  "creationDate": 1793873591050,
  "key": "Nuxeo Platform-2025.27",
  "name": "Nuxeo Platform",
  "operations": [],
  "packages": [],
  "pluginSnapshots": {},
  "releaseDate": 1793873591050,
  "version": "2025.27"
}